arrow(width = 15px) {
    display: inline-block;
    width: width;
    height: width;
    border-bottom: none;
    border-left: none;
    vertical-align: middle;

    &.up {
        transform: rotate(-45deg);
    }

    &.down {
        transform: rotate(135deg);
    }

    &.right {
        transform: rotate(45deg);
    }

    &.left {
        transform: rotate(-135deg);
    }
}

.popup-dialog {
    position: relative;

    .main {
        padding: 20px 20px;
        background-color: #fff;
        border-top: 1px solid primary-color;
        border-left: 1px solid primary-color;
        box-shadow: 0px 3px 5px #0000004d;
        display: none;
        position: absolute;
        box-sizing: border-box;
        z-index: 2000;
    }

    .showCls {
        display: block;
    }

    .arrow {
        position: absolute;
        top: -10px;
        left: 40px;
        background-color: #fff;
        z-index: 100;
        border: 1px solid primary-color;
        arrow();
    }

    .icon-close {
        font-size: 30px;
        color: primary-color;
        position: absolute;
        right: 10px;
        top: 5px;
        cursor: pointer;
    }
}

.mask {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1000;
}
